#include <fcntl.h>
#include <stdio.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <unistd.h>

// int main() {
//   char str[100] = {0};
//   str[99] = '\0';
//   printf("从stdin中读取数据:\n");
//   fscanf(stdin, "%99s", str);
//   printf("在stdout中写入数据:\n");
//   fprintf(stdout, "%s\n", str);
//   printf("在stderr中写入数据:\n");
//   fprintf(stderr, "%s\n", str);
//   return 0;
// }

// int main()
// {
//   // int fd = open("log.txt", O_WRONLY);
//   // int fd = open("log.txt", O_APPEND);
//   int fd = open("log.txt", O_WRONLY|O_APPEND);
//   // char *str = "xxxxxxxxxxxxxxx\n";
//   char *str = "aaaa\n";
//   if (fd < 0) {
//     printf("open file\n");
//     return(-1);
//   }
//   write(fd, str, strlen(str));
//   return 0;
// }

// //////////////////////////////

// int main() {
//   int fd1 = open("log.txt", O_WRONLY | O_CREAT,0777);
//   int fd2 = open("log.txt", O_WRONLY | O_CREAT,0777);
//   int fd3 = open("log.txt", O_WRONLY | O_CREAT,0777);
//   int fd4 = open("log.txt", O_WRONLY | O_CREAT,0777);

//   printf("fd1 = %d\n", fd1);
//   printf("fd2 = %d\n", fd2);
//   printf("fd3 = %d\n", fd3);
//   printf("fd4 = %d\n", fd4);
//   return 0;
// }

// // //////////////////////////////

// int main() {
//   printf("\n");
//   char buf[1024];
//   buf[1024] = 0;
//   ssize_t ret = read(0, buf, sizeof(buf));
//   if (ret > 0) {
//     buf[ret] = '\0';
//     write(1, buf, strlen(buf));
//     write(2, buf, strlen(buf));
//   }
//   return 0;
// }

// // //////////////////////////////

// int main() {
//   char buf[1024];
//   buf[1024] = 0;
//   ssize_t ret = read(0, buf, sizeof(buf));
//   if (ret > 0) {
//     close(1);
//     buf[ret] = '\0';
//     fprintf(stdout, buf, strlen(buf));
//   }
//   return 0;
// }

// // //////////////////////////////

// int main() {
//   char buf[1024];
//   buf[1024] = 0;
//   ssize_t ret = read(0, buf, sizeof(buf));
//   if (ret > 0) {
//     close(1);
//     buf[ret] = '\0';
//     fprintf(stderr, buf, strlen(buf));
//   }
//   return 0;
// }

// //////////////////////////////

int main() {
  printf("stdin->fd1:%d\n",stdin->_fileno);
  printf("stdout->fd2:%d\n",stdout->_fileno);
  printf("stderr->fd3:%d\n",stderr->_fileno);
  return 0;
}